package com.tinet.autentia.autentificador.svc;

import java.util.List;

import javax.annotation.PostConstruct;
import javax.ejb.Stateless;
import javax.persistence.EntityManager;
import javax.persistence.PersistenceContext;

import com.tinet.autentia.autentificador.dao.UsuarioDAO;
import com.tinet.autentia.autentificador.model.Usuario;

/**
 * 
 * Clase que implementa los metodos de InterfazUsuarioBean.
 * 
 * @author Frmancil
 */
@Stateless(mappedName = "userbean", name = "userbean")
public class UsuarioBean implements InterfazUsuarioBean{
    private UsuarioDAO dao;
    List<Usuario> usuarios;

    /*
     * Entity manager para manejar la conexion con la capa de persistencia
     */
    @PersistenceContext(unitName = "MySqlDS")
    private EntityManager em;

    @PostConstruct
    // crea una instancia de dao en la clase bean
    private void init() {
        if (dao == null) {
            dao = new UsuarioDAO(em);

        }
    }

    public List<Usuario> getUsuarios() {
        return usuarios;
    }

    public void setUsuarios(List<Usuario> usuarios) {
        this.usuarios = usuarios;
    }

    public EntityManager getEm() {
        return em;
    }

    public void setEm(EntityManager em) {
        this.em = em;
    }
    
    /**
     * Aca empiezan los metodos
     */
    
    public void listar(){
        dao.listar();
    }
    
}
